package com.wangcang.widgetlibrary.chart;

import android.content.Intent;
import android.graphics.PixelFormat;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.util.Log;

import com.tencent.smtt.sdk.WebView;
import com.tencent.smtt.sdk.WebViewClient;
import com.wangcang.widgetlibrary.R;
import com.wangcang.widgetlibrary.custom_widget.X5WebView;

import org.json.JSONArray;

public class ChartWebViewActivity extends AppCompatActivity {
    private X5WebView mWebView;
    public Handler handler = new Handler();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //视频为了避免闪屏和透明问题
        getWindow().setFormat(PixelFormat.TRANSLUCENT);
        setContentView(R.layout.activity_x5_web_view);
        mWebView = (X5WebView) findViewById(R.id.x5webview);
//        mWebView.getWebView().addJavascriptInterface(new MyChartObj(), "char");
        Intent intent=getIntent();
        if (null!=intent){
            String url=intent.getStringExtra("url");
            if (!TextUtils.isEmpty(url)){
                mWebView.loadUrl(url);
            }
        }

        mWebView.getWebView().setWebViewClient(new WebViewClient(){
            @Override
            public void onPageFinished(WebView view, String url) {
                super.onPageFinished(view, url);
//                Log.d("ChartWebViewActivity","onPageFinished");
                init();
//                new  MyChartObj();
            }
        });

//        mWebView.getWebView().setWebChromeClient(new WebChromeClient() {
//
//            @Override
//            public boolean onJsAlert(WebView webView, String s, String s1, final com.tencent.smtt.export.external.interfaces.JsResult jsResult) {
//                AlertDialog.Builder b = new AlertDialog.Builder(ChartWebViewActivity.this);
//                b.setTitle("Alert");
//                b.setMessage(s1);
//                b.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
//                    @Override
//                    public void onClick(DialogInterface dialog, int which) {
//                        jsResult.confirm();
//                    }
//                });
//                b.setCancelable(false);
//                b.create().show();
//                return true;
//            }
//        });
    }


//    处理webview进入多层，按返回键回到上一次，如果到顶层就结束Activity
    @Override
    public void onBackPressed() {
        if (mWebView.getWebView().canGoBack()) {
            mWebView.getWebView().goBack();
            return;
        }
        super.onBackPressed();
    }

    private class MyChartObj extends Object {

        public MyChartObj() {
            init();
        }

        public void init(){

            handler.post(new Runnable() {
                public void run() {
                    mWebView.loadUrl("javascript:setData('" +seriers()+"','" +xAxis()+"')");
                }
            });
        }

        public  String seriers() {
            JSONArray jsonArray = new JSONArray();
            jsonArray.put(22);
            jsonArray.put(11);
            jsonArray.put(2);
            jsonArray.put(35);
            jsonArray.put(18);
            jsonArray.put(7);
            return jsonArray.toString();
        }

        public  String xAxis() {
            JSONArray jsonArray = new JSONArray();
            jsonArray.put("袜子");
            jsonArray.put("高跟鞋");
            jsonArray.put("裤子");
            jsonArray.put("衬衫");
            jsonArray.put("羊毛衫");
            jsonArray.put("雪纺衫");
            return jsonArray.toString();
//            try {
//                JSONObject object1 = new JSONObject();
//                object1.put("id", 1);
//                object1.put("name", "张三");
//                object1.put("phone", "123456");
//
//                JSONObject object2 = new JSONObject();
//                object2.put("id", 2);
//                object2.put("name", "李四");
//                object2.put("phone", "456789");
//
//                JSONArray jsonArray = new JSONArray();
//                jsonArray.put(object1);
//                jsonArray.put(object2);
//                return jsonArray.toString();
//            } catch (JSONException e) {
//                e.printStackTrace();
//            }
//            return null;
        }
    }
    public void init(){

        handler.post(new Runnable() {
            public void run() {
                mWebView.loadUrl("javascript:setData('" +seriers()+"','" +xAxis()+"')");
            }
        });
    }
    public  String seriers() {
        JSONArray jsonArray = new JSONArray();
        jsonArray.put(22);
        jsonArray.put(11);
        jsonArray.put(2);
        jsonArray.put(35);
        jsonArray.put(18);
        jsonArray.put(7);
        jsonArray.put(7);
        jsonArray.put(7);
        jsonArray.put(50);
        jsonArray.put(45);
        return jsonArray.toString();
    }
    public  String xAxis() {
        JSONArray jsonArray = new JSONArray();
        jsonArray.put("袜子");
        jsonArray.put("高跟鞋");
        jsonArray.put("裤子");
        jsonArray.put("衬衫");
        jsonArray.put("羊毛衫");
        jsonArray.put("雪纺衫");
        jsonArray.put("雪纺衫");
        jsonArray.put("雪纺衫");
        jsonArray.put("雪纺衫");
        jsonArray.put("雪纺衫");
        return jsonArray.toString();
    }
}
